In recent years, to handle image information as digital information and achieve high-efficiency information transmission and accumulation in doing do, apparatuses compliant with a standard, such as MPEG (Moving Picture Experts Group) for compressing image information through orthogonal transforms such as discrete cosine transforms and motion compensation by using redundancy inherent to image information, have been spreading among broadcast stations to distribute information and among general households to receive information.
Particularly, MPEG2 (ISO (International Organization for Standardization)/IEC (International Electrotechnical Commission) 13818-2) is defined as a general-purpose image encoding standard, and is applicable to interlaced images and non-interlaced images, and to standard-resolution images and high-definition images. Currently, MPEG2 is used in a wide range of applications for professionals and general consumers. According to the MPEG2 compression method, a bit rate of 4 to 8 Mbps is assigned to an interlaced image having a standard resolution of 720×480 pixels, and a bit rate of 18 to 22 Mbps is assigned to an interlaced image having a high-resolution of 1,920×1,088 pixels, for example. In this manner, high compression rates and excellent image quality can be realized.
MPEG2 is designed mainly for high-quality image encoding suited for broadcasting, but is not compatible with lower bit rates than MPEG1 or encoding methods involving higher compression rates. As mobile terminals are becoming popular, the demand for such encoding methods is expected to increase in the future, and to meet the demand, the MPEG4 encoding method has been standardized. As for image encoding methods, the ISO/IEC 14496-2 standard was approved as an international standard in December 1998.
Further, a standard called H.26L (ITU-T (International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG (Video Coding Expert Group)), which is originally intended for encoding images for video conferences, is currently being set. Compared with the conventional encoding methods such as MPEG2 and MPEG4, H.26L requires a larger amount of calculation in encoding and decoding, but is known to achieve a higher encoding efficiency. Also, as a part of the MPEG4 activity, “Joint Model of Enhanced-Compression Video Coding” is now being established as a standard for achieving a higher encoding efficiency by incorporating functions unsupported by H.26L into the functions based on H.26L.
On the standardization schedule, the standard was approved as an international standard under the name of H.264 and MPEG-4 Part 10 (Advanced Video Coding, hereinafter referred to as AVC) in March 2003.
Meanwhile, to improve motion vector encoding using median predictions according to AVC, there has been a suggestion to adaptively use “Temporal Predictor” or “Spatio-Temporal Predictor” as predicted motion vector information in addition to “Spatial Predictor”, which is defined in AVC and is determined through a median prediction (see Non-Patent Document 1, for example).
In an image information encoding device, cost function values for respective blocks are calculated by using the predicted motion vector information about the respective blocks, and optimum predicted motion vector information is selected. Through the compressed image information, flag information indicating the information as to which predicted motion vector information has been used is transmitted for each block.
Meanwhile, the macroblock size of 16×16 pixels might not be optimal for a large frame such as an UHD (Ultra High Definition: 4000×2000 pixels) frame to be encoded by a next-generation encoding method.
In view of this and for the purpose of achieving an even higher encoding efficiency than that achieved by AVC, an encoding method called HEVC (High Efficiency Video Coding) is now being standardized by JCTVC (Joint Collaboration Team—Video Coding), which is a joint standards organization of ITU-T and ISO/IEC (see Non-Patent Document 2, for example).
According to the HEVC encoding method, coding units (CUs) are defined as processing units like macroblocks of AVC. Unlike the macroblocks of AVC, the CUs are not fixed to the size of 16×16 pixels. The size of the CUs is specified in the compressed image information in each sequence.
The CUs form a hierarchical structure including the largest coding units (LCUs) and the smallest coding units (SCUs). Roughly speaking, the LCUs can be considered equivalent to the macroblocks of AVC, and the CUs on the lower hierarchical levels than the LCUs (CUs smaller than LCUs) can be considered equivalent to the sub macroblocks of AVC.
In motion vector (MV) encoding, MVs are not sent directly to a decoder, but the difference vectors (MVDs) that are the differences from predicted motion vectors (PMVs) are subjected to lossless encoding, and are then sent to the decoder. By a technique called Advanced MV prediction (AMVP) or MV competition, an index (pmv_index) for identifying PMVs is contained in each stream when there are two or more candidate PMVs (see Non-Patent Document 2, for example).
The candidate PMVs may be MVs of blocks close to each other in a frame of the same time (spatial_pmv), or MVs of blocks that differ from the encoded current frame in terms of time (temporal_pmv). Where pmv_index is encoded, the bit rate after the encoding is normally low if the value of pmv_index is small.
Therefore, to achieve a high encoding efficiency, pmv_index having a small value should be assigned to a candidate PMV having a higher designation frequency.